草庐IT

Python psycopg2 游标

全部标签

android - SQLite 数据库和游标

我想知道是否有人可以给我简要介绍一下Android游标。几个具体问题:1-我有一个在数据库查询后返回游标的方法:publicstaticCursorgetVehicles(){SQLiteDatabasedb=vehicleData.getReadableDatabase();Cursorcursor=db.query(TABLE_NAME,GET_VEHICLES_FROM_CLAUSE,null,null,null,null,ORDER_BY);returncursor;}为了进行管理,我在return语句之前尝试了db.close()。但是,这导致返回的游标不包含任何行。这是为什

android - 如果 SQLite 游标没有结果,应用程序会崩溃

我有一个使用游标运行SQlite查询的应用程序。publicCursortotaltrips(){Cursorcursor=database.rawQuery("SELECT*ASTTotalFROM"+DatabaseHelper.TABLE_NAME,null);returncursor;}结果存储到一个最多有5个值的Arraylist中。如果数据库中没有记录,应用程序就会崩溃。如果我有一个或多个数据库条目,它就可以正常工作。有谁知道在没有数据库条目时如何阻止它崩溃?//getcolumnvalueif(Distance.moveToNext())result=String.val

android - 一个空的 SQLite 游标会为 isBeforeFirst、isAfterLast、两者或两者都不返回 true 吗?

这是一个非常简单的问题。我希望答案是“两者都有”,但我担心两者都不是。我仔细检查了SQLiteDatabase的Android开发者文档和Cursor,但找不到这个问题的任何明确答案。我要问的情况是我从哪里获得游标,调用moveToFirst,然后循环直到isAfterLast返回true。对于我正在编写几次代码的模式来说,如果光标有0条记录就可以正常工作并执行循环0次,那将非常方便。或者我是否需要先显式测试空游标?编辑:一些回复表明人们没有完全理解我的问题。基本上,我想这样写:cursor=myDb.query(...)cursor.moveToFirst()while(!curso

java - 游标 while 循环返回除最后一个值之外的每个值

我正在使用while循环遍历游标,然后输出数据库中每个点的经度和纬度值。出于某种原因,它没有返回光标中的最后一组(或第一个取决于我是否使用Cursor.MoveToLast)经度和纬度值。这是我的代码:publicvoidloadTrack(){SQLiteDatabasedb1=waypoints.getWritableDatabase();CursortrackCursor=db1.query(TABLE_NAME,FROM,"trackidfk=1",null,null,null,ORDER_BY);trackCursor.moveToFirst();while(trackCur

android - 检查游标是否有结果

我正在使用数据库存储日期,并希望根据where子句中给出的id返回单个列。publicStringgetPmax(Stringserial){String[]columns=newString[]{KEY_SERIAL,KEY_PMAX};Cursorc=ourDatabase.query(DATABASE_TABLE,columns,"serial="+serial,null,null,null,null);Stringresult="nothingfound";if(c!=null){intiPmax=c.getColumnIndex(KEY_PMAX);c.moveToFirst

android - 数据库关闭后游标还活着吗?

我的代码如下:CursorgetResults(){SQLiteDatabasedb=dbHelper.getReadableDatabase();Cursorc=qb.query(db,projection,null,null,null,null,null);db.close();returnc;}我的问题是,执行完db.close()后,游标c是否还活着并且可以导航?谢谢。 最佳答案 没有。您不想在数据库关闭时使用游标。当您调用close()时,它会使对象(及其对应的游标)无效。 关

Python 为什么不能为 sqlite3 游标编写上下文管理器?

这应该可以工作,但只是说没有股票表-应该在上下文管理器内的某处丢失了连接?importsqlite3fromcontextlibimportcontextmanager@contextmanagerdefdoquery(conn,q,params=()):c=conn.cursor()c.execute(q,params)conn.commit()yieldcc.close()withsqlite3.connect(':memory:')asdb:doquery(db,'''createtablestocks(datetext,transtext,symboltext,qtyreal,

python - 我可以将我的 sqlite 连接和游标放在一个函数中吗?

我在想我会尝试让我的sqlite数据库连接成为一个函数,而不是复制/粘贴连接和执行查询所需的~6行。我想让它变得多才多艺,这样我就可以使用相同的功能来创建/选择/插入/等等...下面是我试过的。“INSERT”和“CREATETABLE”查询正在运行,但如果我执行“SELECT”查询,我该如何处理它在函数外部获取的值?通常我想打印它获取的值并用它们做其他事情。当我像下面那样做时,我得到一个错误Traceback(mostrecentcalllast):File"C:\Users\steini\Desktop\py\database\test3.py",line15,inforrowin

android,游标返回 bool 值?

AndroidCursor可以返回bool值吗?我查看了文档,但没有关于它的信息?如果没有-那么是否有其他方法可以从SQLite表中获取bool值? 最佳答案 SQLite3的android实现不正确支持bool值。您将需要使用设置为0或1的整数并编写一些代码将其转换为bool值,例如intx=cursor.getInt(...);returnx==1; 关于android,游标返回bool值?,我们在StackOverflow上找到一个类似的问题: http

android - 如何将超过 1 MB 的数据从 sqlite db 加载到 android 游标?

确切地说,我正在尝试将超过1MB的数据从sqlite数据库加载到android游标。在加载时它会给出如下错误08-0411:10:15.813:ERROR/CursorWindow(4465):needtogrow:mSize=2097152,size=403719,freeSpace()=209669,numRows=108-0411:10:15.813:ERROR/CursorWindow(4465):Attemptingtogrowwindowbeyondmaxsize(2097152)08-0411:10:15.813:ERROR/Cursor(4465):Failedallo